package com.gydz.gydzbaseframeworkboot.SgsE.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.gydz.gydzbaseframeworkboot.Common.utils.page.PageParam;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@Data
@EqualsAndHashCode(callSuper = true)
public class EInterfaceMap extends PageParam {

    private String biSessID;           //本条业务标识
    private String interfaceID;        //本业务接口类型：0-A, 1-C/D, 2-E, 3-F, 4-G, 5-L, 6-Gr
//    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date dtsTime;           //业务开始时间
    private String dtsTimeSelect;   //会话开始时间  这个值只是用来查询的，显示值在上方
//    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date dteTime;           //会话结束时间

    private String dteTimeSelect;   //会话结束时间  这个值只是用来查询的，显示值在上方
    private String intYear;            //业务开始年
    private String intMonth;           //业务开始月
    private String intDay;             //业务开始日
    private String intHour;            //业务开始小时

    private String intMinute;          //业务开始分钟
    private String vcProtocol;      //
    private String vcInfo;          //
    private String trainID;         //机车号
    private String trainNo;         //车次号

    private String intOpc;             //OPC
    private String intDpc;             //DPC
    private String intSLS;             //MTP3层的SLS
    private String vcCallingGT;        //SCCP层主叫GT地址
    private String vcCalledGT;         //SCCP层被叫GT地址

    private String intCallingSSN;      //SCCP层主叫子系统号
    private String intCalledSSN;       //SCCP层被叫子系统号
    private String intMTPType;         //MTP层的mtp3.service_indicator
    private String intSCCPType;        //sccp的message_type
    private String intTcapMessageType; //ＴＣＡＰ 层消息类型，包含起始消息（Ｂｅｇｉｎ）、继续消息（Ｃｏｎｔｉｎｕｅ）、结束消息（Ｅｎｄ）、中止消息（Ａｂｏｒｔ）等

    private String intOpCode;          //MAP操作码, camel协议的OPCODE
    private String vcTacpOtid;        //TCAP的Otid
    private String vcTacpDtid;        //TCAP的Dtid
    private String intSccpCauseClass;  //SCCP层return cause的类型
    private String intSccpCause;       //SCCP层return cause

    private String intTcapCause;       //TCAP层abort cause
    private String intTcapCauseReason; //TCAP层abort cause的类型
    private String intErrCode;         //MAP错误码
    private String intErrReason;       //MAP错误原因码
    private String vcCallingImsi;   //Calling IMSI

    private String vcCalledImsi;    //Called IMSI
    private String vcCallingNumber; //Calling MSISDN
    private String vcCalledNumber;  //Called MSISDN
    private String intCallingFN;    //主叫功能号
    private String intCalledFN;     //被叫功能号

    private String vcMsrnHoNumber;    //MSRN/HoNumber
    private String intTcapComponentid; //TCAP Component ID
    private String vcForwToNumber;  //forwardedToNumber或numberOfForwarding
    private String intForwReason;      //forwardingReason
    private String vcTMscNumber;      //Target MSC号码或Target MSC地址

    private String vcCalledCGI;     //Called 所在CGI  （HLR返回）
    private String intCalledState;     //Called Sub. State
    private String intCalledSubState;  //Called Sub. State
    private String intCSIFlag;         //CSI 标识
    private String vcHlrNumber;       //HLR号码或HLR地址

    private String vcSmcAddr;       //短信中心地址
    private String vcCallRefNumber; //callReferenceNumber
    private String vcSCgi;          //切换中的源小区
    private String vcTCgi;          //切换中的目标小区
    private String vcTmsi;          //TMSI

    private String intSsCode;          //SS-Code
    private String intSsStatus;        //SS-Status
    private String intAlertReason;     //alertReason
    private String vcUssdStringSend;//Sub. Send USSD String
    private String vcUssdStringReceive;//Sub. Receive USSD String

    private String intDxcId;       //DXC设备号
    private String intDxcPort;     //DXC端口号
    private String intDxcTs;       //DXC时隙
    private String intLinkName;   //dxc链路名称


    private String intCardNo;          //设备号
    private String intCardPort;        //端口号
    private String intCardSlot;        //时隙号
    private String intTotalLen;        //数据长度
    private String sourceData;      //数据内容

    private String biaoMingZi;      //表名or大量表名
    private String tableNames;       //用于优化查询union all连接表名字
    private String vcCallingTrainID;//主叫机车号
    private String vcCalledTrainID; //被叫机车号
    private String uintTcapCompNum; //TCA消息的component的数量
    private Integer rowsDownloadExport;//显示的行数

    private Integer startDownloadExport;//开始行数
    private String currentOrAll;    //1表示下载当前页 2表示下载全部
    private Integer totalDownloadExport;//查询到的总行数
    private String sort;    //要排序的列名
    private String order;    //是升序还是降序

    private String vcCamelLAC;
    private String vcCamelCellID;
    private String eTSql;
    private String uintSCgiLac;
    private String uintSCgiCi;


    /**
     * 主叫终端
     */
    private String vcCallingFN;

    /**
     * 被叫终端
     */
    private String vcCalledFN;

    private String uintTCgiLac;
    private String uintTCgiCi;
    private String newSourceData;
    private String bsc;
    private String xiaoQu;

    private String bscMu;
    private String xiaoQuMu;
    private String cgi;
    private String cgiMu;

    public String getIntDxcId() {
        return intDxcId;
    }

    public void setIntDxcId(String intDxcId) {
        this.intDxcId = intDxcId;
    }

    public String getIntDxcPort() {
        return intDxcPort;
    }

    public void setIntDxcPort(String intDxcPort) {
        this.intDxcPort = intDxcPort;
    }

    public String getIntDxcTs() {
        return intDxcTs;
    }

    public void setIntDxcTs(String intDxcTs) {
        this.intDxcTs = intDxcTs;
    }

    public String getIntLinkName() {
        return intLinkName;
    }

    public void setIntLinkName(String intLinkName) {
        this.intLinkName = intLinkName;
    }

    public String getTableNames() {
        return tableNames;
    }

    public void setTableNames(String tableNames) {
        this.tableNames = tableNames;
    }

    public String getBiSessID() {
        return biSessID;
    }

    public void setBiSessID(String biSessID) {
        this.biSessID = biSessID;
    }

    public String getInterfaceID() {
        return interfaceID;
    }

    public void setInterfaceID(String interfaceID) {
        this.interfaceID = interfaceID;
    }

    public Date getDtsTime() {
        return dtsTime;
    }

    public void setDtsTime(Date dtsTime) {
        this.dtsTime = dtsTime;
    }

    public String getDtsTimeSelect() {
        return dtsTimeSelect;
    }

    public void setDtsTimeSelect(String dtsTimeSelect) {
        this.dtsTimeSelect = dtsTimeSelect;
    }

    public Date getDteTime() {
        return dteTime;
    }

    public void setDteTime(Date dteTime) {
        this.dteTime = dteTime;
    }

    public String getDteTimeSelect() {
        return dteTimeSelect;
    }

    public void setDteTimeSelect(String dteTimeSelect) {
        this.dteTimeSelect = dteTimeSelect;
    }

    public String getIntYear() {
        return intYear;
    }

    public void setIntYear(String intYear) {
        this.intYear = intYear;
    }

    public String getIntMonth() {
        return intMonth;
    }

    public void setIntMonth(String intMonth) {
        this.intMonth = intMonth;
    }

    public String getIntDay() {
        return intDay;
    }

    public void setIntDay(String intDay) {
        this.intDay = intDay;
    }

    public String getIntHour() {
        return intHour;
    }

    public void setIntHour(String intHour) {
        this.intHour = intHour;
    }

    public String getIntMinute() {
        return intMinute;
    }

    public void setIntMinute(String intMinute) {
        this.intMinute = intMinute;
    }

    public String getVcProtocol() {
        return vcProtocol;
    }

    public void setVcProtocol(String vcProtocol) {
        this.vcProtocol = vcProtocol;
    }

    public String getVcInfo() {
        return vcInfo;
    }

    public void setVcInfo(String vcInfo) {
        this.vcInfo = vcInfo;
    }

    public String getTrainID() {
        return trainID;
    }

    public void setTrainID(String trainID) {
        this.trainID = trainID;
    }

    public String getTrainNo() {
        return trainNo;
    }

    public void setTrainNo(String trainNo) {
        this.trainNo = trainNo;
    }

    public String getIntOpc() {
        return intOpc;
    }

    public void setIntOpc(String intOpc) {
        this.intOpc = intOpc;
    }

    public String getIntDpc() {
        return intDpc;
    }

    public void setIntDpc(String intDpc) {
        this.intDpc = intDpc;
    }

    public String getIntSLS() {
        return intSLS;
    }

    public void setIntSLS(String intSLS) {
        this.intSLS = intSLS;
    }

    public String getVcCallingGT() {
        return vcCallingGT;
    }

    public void setVcCallingGT(String vcCallingGT) {
        this.vcCallingGT = vcCallingGT;
    }

    public String getVcCalledGT() {
        return vcCalledGT;
    }

    public void setVcCalledGT(String vcCalledGT) {
        this.vcCalledGT = vcCalledGT;
    }

    public String getIntCallingSSN() {
        return intCallingSSN;
    }

    public void setIntCallingSSN(String intCallingSSN) {
        this.intCallingSSN = intCallingSSN;
    }

    public String getIntCalledSSN() {
        return intCalledSSN;
    }

    public void setIntCalledSSN(String intCalledSSN) {
        this.intCalledSSN = intCalledSSN;
    }

    public String getIntMTPType() {
        return intMTPType;
    }

    public void setIntMTPType(String intMTPType) {
        this.intMTPType = intMTPType;
    }

    public String getIntSCCPType() {
        return intSCCPType;
    }

    public void setIntSCCPType(String intSCCPType) {
        this.intSCCPType = intSCCPType;
    }

    public String getIntTcapMessageType() {
        return intTcapMessageType;
    }

    public void setIntTcapMessageType(String intTcapMessageType) {
        this.intTcapMessageType = intTcapMessageType;
    }

    public String getIntOpCode() {
        return intOpCode;
    }

    public void setIntOpCode(String intOpCode) {
        if("255".equals(intOpCode)){
            intOpCode = "";
        }
        this.intOpCode = intOpCode;
    }

    public String getVcTacpOtid() {
        return vcTacpOtid;
    }

    public void setVcTacpOtid(String vcTacpOtid) {
        this.vcTacpOtid = vcTacpOtid;
    }

    public String getVcTacpDtid() {
        return vcTacpDtid;
    }

    public void setVcTacpDtid(String vcTacpDtid) {
        this.vcTacpDtid = vcTacpDtid;
    }

    public String getIntSccpCauseClass() {
        return intSccpCauseClass;
    }

    public void setIntSccpCauseClass(String intSccpCauseClass) {
        this.intSccpCauseClass = intSccpCauseClass;
    }

    public String getIntSccpCause() {
        return intSccpCause;
    }

    public void setIntSccpCause(String intSccpCause) {
        this.intSccpCause = intSccpCause;
    }

    public String getIntTcapCause() {
        return intTcapCause;
    }

    public void setIntTcapCause(String intTcapCause) {
        this.intTcapCause = intTcapCause;
    }

    public String getIntTcapCauseReason() {
        return intTcapCauseReason;
    }

    public void setIntTcapCauseReason(String intTcapCauseReason) {
        this.intTcapCauseReason = intTcapCauseReason;
    }

    public String getIntErrCode() {
        return intErrCode;
    }

    public void setIntErrCode(String intErrCode) {
        if("255".equals(intErrCode)){
            intErrCode = "";
        }
        this.intErrCode = intErrCode;
    }

    public String getIntErrReason() {
        return intErrReason;
    }

    public void setIntErrReason(String intErrReason) {
        this.intErrReason = intErrReason;
    }

    public String getVcCallingImsi() {
        return vcCallingImsi;
    }

    public void setVcCallingImsi(String vcCallingImsi) {
        this.vcCallingImsi = vcCallingImsi;
    }

    public String getVcCalledImsi() {
        return vcCalledImsi;
    }

    public void setVcCalledImsi(String vcCalledImsi) {
        this.vcCalledImsi = vcCalledImsi;
    }

    public String getVcCallingNumber() {
        return vcCallingNumber;
    }

    public void setVcCallingNumber(String vcCallingNumber) {
        this.vcCallingNumber = vcCallingNumber;
    }

    public String getVcCalledNumber() {
        return vcCalledNumber;
    }

    public void setVcCalledNumber(String vcCalledNumber) {
        this.vcCalledNumber = vcCalledNumber;
    }

    public String getIntCallingFN() {
        return intCallingFN;
    }

    public void setIntCallingFN(String intCallingFN) {
        this.intCallingFN = intCallingFN;
    }

    public String getIntCalledFN() {
        return intCalledFN;
    }

    public void setIntCalledFN(String intCalledFN) {
        this.intCalledFN = intCalledFN;
    }

    public String getVcMsrnHoNumber() {
        return vcMsrnHoNumber;
    }

    public void setVcMsrnHoNumber(String vcMsrnHoNumber) {
        this.vcMsrnHoNumber = vcMsrnHoNumber;
    }

    public String getIntTcapComponentid() {
        return intTcapComponentid;
    }

    public void setIntTcapComponentid(String intTcapComponentid) {
        this.intTcapComponentid = intTcapComponentid;
    }

    public String getVcForwToNumber() {
        return vcForwToNumber;
    }

    public void setVcForwToNumber(String vcForwToNumber) {
        this.vcForwToNumber = vcForwToNumber;
    }

    public String getIntForwReason() {
        return intForwReason;
    }

    public void setIntForwReason(String intForwReason) {
        this.intForwReason = intForwReason;
    }

    public String getVcTMscNumber() {
        return vcTMscNumber;
    }

    public void setVcTMscNumber(String vcTMscNumber) {
        this.vcTMscNumber = vcTMscNumber;
    }

    public String getVcCalledCGI() {
        return vcCalledCGI;
    }

    public void setVcCalledCGI(String vcCalledCGI) {
        this.vcCalledCGI = vcCalledCGI;
    }

    public String getIntCalledState() {
        return intCalledState;
    }

    public void setIntCalledState(String intCalledState) {
        this.intCalledState = intCalledState;
    }

    public String getIntCalledSubState() {
        return intCalledSubState;
    }

    public void setIntCalledSubState(String intCalledSubState) {
        this.intCalledSubState = intCalledSubState;
    }

    public String getIntCSIFlag() {
        return intCSIFlag;
    }

    public void setIntCSIFlag(String intCSIFlag) {
        this.intCSIFlag = intCSIFlag;
    }

    public String getVcHlrNumber() {
        return vcHlrNumber;
    }

    public void setVcHlrNumber(String vcHlrNumber) {
        this.vcHlrNumber = vcHlrNumber;
    }

    public String getVcSmcAddr() {
        return vcSmcAddr;
    }

    public void setVcSmcAddr(String vcSmcAddr) {
        this.vcSmcAddr = vcSmcAddr;
    }

    public String getVcCallRefNumber() {
        return vcCallRefNumber;
    }

    public void setVcCallRefNumber(String vcCallRefNumber) {
        this.vcCallRefNumber = vcCallRefNumber;
    }

    public String getVcSCgi() {
        return vcSCgi;
    }

    public void setVcSCgi(String vcSCgi) {
        this.vcSCgi = vcSCgi;
    }

    public String getVcTCgi() {
        return vcTCgi;
    }

    public void setVcTCgi(String vcTCgi) {
        this.vcTCgi = vcTCgi;
    }

    public String getVcTmsi() {
        return vcTmsi;
    }

    public void setVcTmsi(String vcTmsi) {
        this.vcTmsi = vcTmsi;
    }

    public String getIntSsCode() {
        return intSsCode;
    }

    public void setIntSsCode(String intSsCode) {
        this.intSsCode = intSsCode;
    }

    public String getIntSsStatus() {
        return intSsStatus;
    }

    public void setIntSsStatus(String intSsStatus) {
        this.intSsStatus = intSsStatus;
    }

    public String getIntAlertReason() {
        return intAlertReason;
    }

    public void setIntAlertReason(String intAlertReason) {
        this.intAlertReason = intAlertReason;
    }

    public String getVcUssdStringSend() {
        return vcUssdStringSend;
    }

    public void setVcUssdStringSend(String vcUssdStringSend) {
        this.vcUssdStringSend = vcUssdStringSend;
    }

    public String getVcUssdStringReceive() {
        return vcUssdStringReceive;
    }

    public void setVcUssdStringReceive(String vcUssdStringReceive) {
        this.vcUssdStringReceive = vcUssdStringReceive;
    }

    public String getIntCardNo() {
        return intCardNo;
    }

    public void setIntCardNo(String intCardNo) {
        this.intCardNo = intCardNo;
    }

    public String getIntCardPort() {
        return intCardPort;
    }

    public void setIntCardPort(String intCardPort) {
        this.intCardPort = intCardPort;
    }

    public String getIntCardSlot() {
        return intCardSlot;
    }

    public void setIntCardSlot(String intCardSlot) {
        this.intCardSlot = intCardSlot;
    }

    public String getIntTotalLen() {
        return intTotalLen;
    }

    public void setIntTotalLen(String intTotalLen) {
        this.intTotalLen = intTotalLen;
    }

    public String getSourceData() {
        return sourceData;
    }

    public void setSourceData(String sourceData) {
        this.sourceData = sourceData;
    }

    public String getBiaoMingZi() {
        return biaoMingZi;
    }

    public void setBiaoMingZi(String biaoMingZi) {
        this.biaoMingZi = biaoMingZi;
    }

    public String getVcCallingTrainID() {
        return vcCallingTrainID;
    }

    public void setVcCallingTrainID(String vcCallingTrainID) {
        this.vcCallingTrainID = vcCallingTrainID;
    }

    public String getVcCalledTrainID() {
        return vcCalledTrainID;
    }

    public void setVcCalledTrainID(String vcCalledTrainID) {
        this.vcCalledTrainID = vcCalledTrainID;
    }

    public String getUintTcapCompNum() {
        return uintTcapCompNum;
    }

    public void setUintTcapCompNum(String uintTcapCompNum) {
        this.uintTcapCompNum = uintTcapCompNum;
    }

    public Integer getRowsDownloadExport() {
        return rowsDownloadExport;
    }

    public void setRowsDownloadExport(Integer rowsDownloadExport) {
        this.rowsDownloadExport = rowsDownloadExport;
    }

    public Integer getStartDownloadExport() {
        return startDownloadExport;
    }

    public void setStartDownloadExport(Integer startDownloadExport) {
        this.startDownloadExport = startDownloadExport;
    }

    public String getCurrentOrAll() {
        return currentOrAll;
    }

    public void setCurrentOrAll(String currentOrAll) {
        this.currentOrAll = currentOrAll;
    }

    public Integer getTotalDownloadExport() {
        return totalDownloadExport;
    }

    public void setTotalDownloadExport(Integer totalDownloadExport) {
        this.totalDownloadExport = totalDownloadExport;
    }

    public String getSort() {
        return sort;
    }

    public void setSort(String sort) {
        this.sort = sort;
    }

    public String getOrder() {
        return order;
    }

    public void setOrder(String order) {
        this.order = order;
    }

    public String getVcCamelLAC() {
        return vcCamelLAC;
    }

    public void setVcCamelLAC(String vcCamelLAC) {
        this.vcCamelLAC = vcCamelLAC;
    }

    public String getVcCamelCellID() {
        return vcCamelCellID;
    }

    public void setVcCamelCellID(String vcCamelCellID) {
        this.vcCamelCellID = vcCamelCellID;
    }

    public String geteTSql() {
        return eTSql;
    }

    public void seteTSql(String eTSql) {
        this.eTSql = eTSql;
    }

    public String getUintSCgiLac() {
        return uintSCgiLac;
    }

    public void setUintSCgiLac(String uintSCgiLac) {
        if(uintSCgiLac.contains("fuzzy")){
            uintSCgiLac = uintSCgiLac.replace("fuzzy","");
            this.uintSCgiLac = "uintSCgiLac LIKE CONCAT('%',"+uintSCgiLac+",'%')";
        }else {
            this.uintSCgiLac = uintSCgiLac;
        }
    }

    public String getUintSCgiCi() {
        return uintSCgiCi;
    }

    public void setUintSCgiCi(String uintSCgiCi) {
        if(uintSCgiCi.contains("fuzzy")){
            uintSCgiCi = uintSCgiCi.replace("fuzzy","");
            this.uintSCgiCi = "uintSCgiCi LIKE CONCAT('%',"+uintSCgiCi+",'%')";
        }else {
            this.uintSCgiCi = uintSCgiCi;
        }
    }

    public String getVcCallingFN() {
        return vcCallingFN;
    }

    public void setVcCallingFN(String vcCallingFN) {
        this.vcCallingFN = vcCallingFN;
    }

    public String getVcCalledFN() {
        return vcCalledFN;
    }

    public void setVcCalledFN(String vcCalledFN) {
        this.vcCalledFN = vcCalledFN;
    }

    public String getUintTCgiLac() {
        return uintTCgiLac;
    }

    public void setUintTCgiLac(String uintTCgiLac) {
        if(uintTCgiLac.contains("fuzzy")){
            uintTCgiLac = uintTCgiLac.replace("fuzzy","");
            this.uintTCgiLac = "uintTCgiLac LIKE CONCAT('%',"+uintTCgiLac+",'%')";
        }else {
            this.uintTCgiLac = uintTCgiLac;
        }
    }

    public String getUintTCgiCi() {
        return uintTCgiCi;
    }

    public void setUintTCgiCi(String uintTCgiCi) {
        if(uintTCgiCi.contains("fuzzy")){
            uintTCgiCi = uintTCgiCi.replace("fuzzy","");
            this.uintTCgiCi = "uintTCgiCi LIKE CONCAT('%',"+uintTCgiCi+",'%')";
        }else {
            this.uintTCgiCi = uintTCgiCi;
        }
    }

    public String getNewSourceData() {
        return newSourceData;
    }

    public void setNewSourceData(String newSourceData) {
        this.newSourceData = newSourceData;
    }

    public String getBsc() {
        return bsc;
    }

    public void setBsc(String bsc) {
        this.bsc = bsc;
    }

    public String getXiaoQu() {
        return xiaoQu;
    }

    public void setXiaoQu(String xiaoQu) {
        this.xiaoQu = xiaoQu;
    }

    public String getBscMu() {
        return bscMu;
    }

    public void setBscMu(String bscMu) {
        this.bscMu = bscMu;
    }

    public String getXiaoQuMu() {
        return xiaoQuMu;
    }

    public void setXiaoQuMu(String xiaoQuMu) {
        this.xiaoQuMu = xiaoQuMu;
    }

    public String getCgi() {
        return cgi;
    }

    public void setCgi(String cgi) {
        this.cgi = cgi;
    }

    public String getCgiMu() {
        return cgiMu;
    }

    public void setCgiMu(String cgiMu) {
        this.cgiMu = cgiMu;
    }
}
